package com.liu.sunnyday.dao;

import com.liu.sunnyday.pojo.CheckGroup;
import com.liu.sunnyday.pojo.Setmeal;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * chance！Time
 *
 * @author liuqian
 * @date 2022-06-14 15:29
 * *
 */
public interface SetmealDao {
    //1-分页查询所有套餐
    List<Setmeal> findPageByCondition(String queryString);
    //2-新增套餐时，查询检查项3-2
    List<CheckGroup> findAllgroup();
    //2-3新增套餐，点击确定
    void add(Setmeal setmeal);
    //2-3-1新增套餐：新增套餐后拿到id，操作套餐检查组中间表
    void addSetmealGroup(@Param("setmealId") Integer setmealId, @Param("checkgroupId") Integer checkgroupId);

    //3-1编辑套餐：查询套餐回显
    Setmeal findById(Integer id);
    //3-3编辑套餐：查询复选框选中的检查组,根据套餐id查询，方便返回去回写,然后修改
    List<Integer> findCheckgroupIdsBySetmealId(Integer id);
    //3-4-1编辑套餐：点击确定提交数据，先修改套餐表
    void update(Setmeal setmeal);
    //3-4-2编辑套餐:修改检查组关联的检查项:先全部解除
    void deleteBYsID(Integer id);
    //3-4-3编辑套餐：套餐和检查组中间表添加数据
    void insertById(@Param("setmeal_id") Integer id, @Param("checkgroup_id") Integer checkgroupId);

    //4-1删除套餐，查询是否有与之关联的订单
    int findCountById(Integer id);
    //4-2删除套餐，删除中间表套餐关联的检查组
    void deleteSGById(Integer id);
    //4-3删除套餐，删除套餐
    void delete(Integer id);

    List<String> findImgs();

    //sunnyday_mobile
    List<Setmeal> findAll();

    Setmeal findDetailById(Integer id);

}
